package week5;

/**
 * Contact represents a phone contact.
 *
 * @author Lewis and Chase
 * @version 4.0
 */
public class Contact implements Comparable<Contact>
{
    private String firstName, lastName, phone;

    /**
     * 设置与指定信息的接触。
     *
     * @param first     一个名字的字符串表示
     * @param last      一个姓氏的字符串表示
     * @param telephone 一个电话号码的字符串表示
     */
    public Contact(String first, String last, String telephone)
    {
        firstName = first;
        lastName = last;
        phone = telephone;
    }

    /**
     * 将该联系人的描述作为字符串返回。
     *
     * @return 这个联系人的字符串表示
     */
    @Override
    public String toString()
    {
        return lastName + ", " + firstName + "\t" + phone;
    }

    /**
     * 使用姓和名来确定词汇顺序
     *
     * @param other the contact 和 this contact比较
     * @return      比较的整数结果
     */
    public int compareTo(Contact other)
    {
        int result;

        if (lastName.equals(other.lastName))
            result = firstName.compareTo(other.firstName);
        else
            result = lastName.compareTo(other.lastName);

        return result;
    }
}
